package ups.apps.negocio;

import java.util.List;

import javax.ejb.Stateless;
import javax.inject.Inject;
import javax.persistence.EntityManager;
import javax.persistence.Query;

import ups.apps.model.Rol;
import ups.apps.model.Usuario;
@Stateless
public class RolDAO {
	
	@Inject
	private EntityManager em;//manejador persistencia
	
	public void insert(Rol r)
	{
		System.out.println("Insertando");
		//em.getTransaction().begin(); //se inicia la transaccion
		em.persist(r);   //manda a insertar
		//em.getTransaction().commit(); //manda un commit a la base
	}
	
	public void update(Rol r)
	{
		System.out.println("Actualizando");
		//em.getTransaction().begin(); //se inicia la transaccion
		em.merge(r);   //manda a actualizar
		//em.getTransaction().commit(); //manda un commit a la base
	}
	public void remove(Rol r)
	{
		System.out.println("borrando");
		//em.getTransaction().begin(); //se inicia la transaccion
		em.remove(r);   //manda a borrrar
		//em.getTransaction().commit(); //manda un commit a la base
	}
	public Rol read(String id)
	{
		System.out.println("leyendo");			
		Rol r=em.find(Rol.class, id); //recupera la entidad Rol ron el id			
		return r;
	}


	public List<Rol> getRoles(long idmin)
	{
		idmin=0;
		String id = String.valueOf(idmin);
		String sql="select r from Rol r where r.rolId > :id";
		Query q=em.createQuery(sql,Rol.class);
		q.setParameter("id",id);
		List<Rol> list=q.getResultList();
		
		return list;
	}
	
	public List<Rol> getRol() {
		String sql = "SELECT r From Rol r";
		Query q = em.createQuery(sql, Rol.class);
		List<Rol> lst = q.getResultList();
		return lst;
	}	

}
